1. Field
This disclosure relates generally to data graph processing and, more specifically, to graph traversals.
2. Background Art
Data graphs represent data from multiple of domains in an expressive and flexible way. For example, data graphs show relationships between different data objects, and relationships between data objects and properties of these objects. These relationships may be mapped to vertices and edges in the data graph. A graph representation of data is less dependent on a rigid schema common to the relational data and is more suitable for evolving schemas and the ad-hoc integration of data from multiple data sources.
Data graph processing is a tool for processing data. For example, data graph processing is used to analyze social media, semantic web applications and bio-informatics. In these areas, data graph processing identifies and analyzes user relationships in social networks, monitors and manages brand value and company reputation, and analyzes genomics research. Also, data graph processing is used in traditional business processing applications that include business network analysis and optimization, product costing, transportation and distribution analysis, material flow analysis, and product and lifecycle management, to name a few examples.
The advances in the memory-centric data management system that leverage the capabilities of modern hardware, vast memory space, multi-core CPU (central processing unit) and GPU (graphics processing unit) processors provide means for fast and efficient data graph processing. Thus what is needed are system and methods for a fast and efficient graph traversals that leverage capabilities of a memory-centric database management system having multi-core processors and vast memory.